Some cellular telephones and other communications devices now have the capability to determine their location. Several applications for these location-sensitive communications devices have been suggested. Suggested applications for this technology include improved emergency response, location-specific advertising, car or other fleet or asset tracking, and other applications.
Many of the communications devices equipped with location-determining technology use satellite positioning systems such as global positioning satellite (GPS) systems. These satellite positioning systems typically operate by receiving synchronized radio signals from several satellites. One or more correlator will then typically examine the signals for the presence of one or more identifying code. These identifying codes, in the case of GPS known as Gold codes, consist of pseudorandom numbers. Typically, each Gold code corresponds to one satellite in the satellite network and serves to uniquely identify the satellite. Detecting the presence of a Gold code in a radio signal verifies that the received signal is in fact a satellite signal, and indicates which satellite made the transmission. This process of obtaining a signal, verifying the signal's validity, and determining which satellite broadcast the signal is known as signal acquisition.
Once one or more satellite signals have been acquired, the satellite positioning system will typically make dynamic adjustments, such as, for example, adjustments in a local timing reference, in order to maintain a high-correlation signal. This process is known as tracking.
Each of the satellite signals contains information about the time the signal was sent, known as ephemeris data, as well as information about the position of the satellite. From these data, the satellite positioning system is able to calculate its distance from each satellite. The satellite positioning system then uses some form of triangulation to determine its own position.
Traditionally, the process of signal acquisition, tracking, and location calculation can be quite lengthy, often requiring several minutes. This lengthy processing time is undesirable and, for applications such as emergency response, may be unacceptable. Several techniques can be used in cellular telephones and other communications devices to reduce the processing time. Often, information other than the satellite ephemeris data is also provided to the satellite receiver circuitry. This data, known as aiding information, provides actual or approximate information that can be used to expedite or improve the location capability of the receiver which is tracking satellite positioning signals.
Many techniques for improving the performance of satellite positioning systems in communications devices reduce the time required to complete the signal acquisition stage. For example, the communications device may use an almanac containing an estimate of a satellite's position at given time. Knowing the approximate position of the satellite allows the communications device to more quickly locate the signal output from the satellite or other source. Furthermore, the satellite location data in the almanac may be used to calculate or estimate the Doppler shift of the satellite signal. Knowing the Doppler shift of the signal allows the communications device to more quickly lock in on the frequency of the satellite signal, reducing the duration of the acquisition phase. The approximate location of the satellite or the approximate Doppler shift of the signal may therefore be used as aiding information by the satellite positioning circuitry. The almanac may be stored in the communications device itself, or the almanac may be stored in a remote location, such as a cellular processing center or other location. If the almanac is stored in a remote location, information contained in the almanac, or the results of calculations made using information contained in the almanac, may be sent to the communications device via a wireless or other link.
Other techniques used to improve the performance of satellite positioning systems in a communications device reduce the processing time used to calculate the location from the satellite ephemeris data. For example, the triangulation algorithm or other location calculation may be seeded with aiding information indicating an approximate location or with a range of possible locations in order to expedite the calculation or obtain more accurate results. In some communications devices, the approximate location or range of possible locations may be pre-programmed into the device; for example, a device manufactured in a given geographic region may be programmed such that the satellite positioning system will begin searching for its location in that region as a default.
In other devices, the triangulation algorithm may be seeded with the last known location of the mobile device. Yet other devices may use location information about the communications network to seed the triangulation algorithm. For example, a cellular telephone which may be registered to a cellular base station in a service area may use the approximate location of the service area or cell tower as an estimated starting point in the triangulation algorithm or other location calculation.
While these and other techniques may reduce the time required to obtain location data and improve the accuracy of the data, it is still desirable to expedite the process further. For certain applications in which it is crucial to obtain location data as quickly as possible, additional techniques to reduce the processing time are required. Other problems exist.